package presentation;

import java.util.ArrayList;
import java.util.List;

import com.opensymphony.xwork2.ActionSupport;

import metier.AnneeMetier;
import metier.EmplacementMetier;
import metier.IndicateurMetier;
import metier.RegionMetier;
import metier.ValeurMetier;
import modele.Annee;
import modele.Emplacement;
import modele.Indicateur;
import modele.Indicateur_calcule;
import modele.Valeur;

public class ValeurAction  extends ActionSupport{

	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;
	private int annee;
	private String valeur;
	public String getValeur() {
		return valeur;
	}

	public void setValeur(String valeur) {
		this.valeur = valeur;
	}

	private String niveau_base;
	private long identifiantEmplacement;
	private List<Valeur> listeValeurs;
	private long identifiantIndicateur;
	private List<Emplacement> listeEmplacments;


	
	public String getEmplacementsValeurs() {
		

		if (true) {
			listeEmplacments = RegionMetier.getListeNomRegions(0);

		}
		if ("province".equals(niveau_base)) 
		{
//			listeEmplacments.add("province1");
//			listeEmplacments.add("province2");
		 }
		return SUCCESS;	
	}
	
	public String chercherValeur() {
		
		Valeur valeur = new Valeur();

		if ( ! niveau_base.equals("aucun"))
		{
			 valeur.setNiveau_base(niveau_base);
			 valeur.setEmplacement(EmplacementMetier.getEmplacement(identifiantEmplacement));
		}
		
		 if (annee != 0)	
				valeur.setAnnee(AnneeMetier.getAnnee(annee));
		
		Indicateur indicateur = new Indicateur(identifiantIndicateur);
		valeur.setIndicateur(indicateur);
		
		listeValeurs = (ArrayList<Valeur>) ValeurMetier
				.getListeValeursIndicateurParCriteres(valeur);
		return SUCCESS;
	}

	
	public String modifierValeur() {

		Valeur val = new Valeur();
		val.setValeur(valeur);
		
		Annee a = AnneeMetier.getAnnee(annee);
		val.setAnnee(a);
		
		Emplacement emp = EmplacementMetier.getEmplacement(identifiantEmplacement);
		if (ValeurMetier.modifierValeur(val)) {
			return SUCCESS;
		} else
			return ERROR;

	}
	
	public int getAnnee() {
		return annee;
	}

	public void setAnnee(int annee) {
		this.annee = annee;
	}

	public String getNiveau_base() {
		return niveau_base;
	}

	public void setNiveau_base(String niveau_base) {
		this.niveau_base = niveau_base;
	}

	public long getIdentifiantEmplacement() {
		return identifiantEmplacement;
	}

	public void setIdentifiantEmplacement(long identifiantEmplacement) {
		this.identifiantEmplacement = identifiantEmplacement;
	}

	public List<Valeur> getListeValeurs() {
		return listeValeurs;
	}

	public void setListeValeurs(List<Valeur> listeValeurs) {
		this.listeValeurs = listeValeurs;
	}

	public long getIdentifiantIndicateur() {
		return identifiantIndicateur;
	}

	public void setIdentifiantIndicateur(long identifiantIndicateur) {
		this.identifiantIndicateur = identifiantIndicateur;
	}

	public List<Emplacement> getListeEmplacments() {
		return listeEmplacments;
	}

	public void setListeEmplacments(List<Emplacement> listeEmplacments) {
		this.listeEmplacments = listeEmplacments;
	}

}
